package cn.com.edaily.auth.dto;

import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

import java.io.Serializable;
import java.util.Date;

/**
 * <pre>类名: UserDTO</pre>
 * <pre>描述: 用户信息dto</pre>
 * <pre>版权: web_chen@163.com</pre>
 * <pre>日期: 2020/1/31 14:19</pre>
 * <pre>作者: chenwb</pre>
 */
public class UserDTO implements Serializable {
	private static final long serialVersionUID = -3316721963448182998L;

	private String userId;

	private String username;

	private String password;

	private String salt;

	private String email;

	private String phone;

	private String sex;

	private Integer age;

	private String status;

	private Date createTime;

	private Date updateTime;

	private Date lastLoginTime;

	public UserDTO() {
	}

	public UserDTO(String userId, String username, String password, String salt, String email, String status,
	               Date createTime, Date updateTime) {
		this.userId = userId;
		this.username = username;
		this.password = password;
		this.salt = salt;
		this.email = email;
		this.status = status;
		this.createTime = createTime;
		this.updateTime = updateTime;
	}

	@Override
	public String toString() {
		return ReflectionToStringBuilder.toString(this);
	}

	/**
	 * 获取userId
	 *
	 * @return userId
	 */
	public String getUserId() {
		return userId;
	}

	/**
	 * 设置userId
	 *
	 * @param userId userId
	 */
	public void setUserId(String userId) {
		this.userId = userId;
	}

	/**
	 * 获取username
	 *
	 * @return username
	 */
	public String getUsername() {
		return username;
	}

	/**
	 * 设置username
	 *
	 * @param username username
	 */
	public void setUsername(String username) {
		this.username = username;
	}

	/**
	 * 获取password
	 *
	 * @return password
	 */
	public String getPassword() {
		return password;
	}

	/**
	 * 设置password
	 *
	 * @param password password
	 */
	public void setPassword(String password) {
		this.password = password;
	}

	/**
	 * 获取salt
	 *
	 * @return salt
	 */
	public String getSalt() {
		return salt;
	}

	/**
	 * 设置salt
	 *
	 * @param salt salt
	 */
	public void setSalt(String salt) {
		this.salt = salt;
	}

	/**
	 * 获取email
	 *
	 * @return email
	 */
	public String getEmail() {
		return email;
	}

	/**
	 * 设置email
	 *
	 * @param email email
	 */
	public void setEmail(String email) {
		this.email = email;
	}

	/**
	 * 获取phone
	 *
	 * @return phone
	 */
	public String getPhone() {
		return phone;
	}

	/**
	 * 设置phone
	 *
	 * @param phone phone
	 */
	public void setPhone(String phone) {
		this.phone = phone;
	}

	/**
	 * 获取sex
	 *
	 * @return sex
	 */
	public String getSex() {
		return sex;
	}

	/**
	 * 获取age
	 *
	 * @return age
	 */
	public Integer getAge() {
		return age;
	}

	/**
	 * 设置age
	 *
	 * @param age age
	 */
	public void setAge(Integer age) {
		this.age = age;
	}

	/**
	 * 设置sex
	 *
	 * @param sex sex
	 */
	public void setSex(String sex) {
		this.sex = sex;
	}

	/**
	 * 获取status
	 *
	 * @return status
	 */
	public String getStatus() {
		return status;
	}

	/**
	 * 设置status
	 *
	 * @param status status
	 */
	public void setStatus(String status) {
		this.status = status;
	}

	/**
	 * 获取createTime
	 *
	 * @return createTime
	 */
	public Date getCreateTime() {
		return createTime;
	}

	/**
	 * 设置createTime
	 *
	 * @param createTime createTime
	 */
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	/**
	 * 获取updateTime
	 *
	 * @return updateTime
	 */
	public Date getUpdateTime() {
		return updateTime;
	}

	/**
	 * 设置updateTime
	 *
	 * @param updateTime updateTime
	 */
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	/**
	 * 获取lastLoginTime
	 *
	 * @return lastLoginTime
	 */
	public Date getLastLoginTime() {
		return lastLoginTime;
	}

	/**
	 * 设置lastLoginTime
	 *
	 * @param lastLoginTime lastLoginTime
	 */
	public void setLastLoginTime(Date lastLoginTime) {
		this.lastLoginTime = lastLoginTime;
	}
}
